#include "formchat.h"
#include "ui_formchat.h"
#include "plateaurisq.h"

FormChat::FormChat(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::FormChat)
{
    ui->setupUi(this);

    ui->joueurCb->addItem("Tous", 1);
}

FormChat::~FormChat()
{
    delete ui;
}

void FormChat::nouveauMessage(QString src, QString msg, QString dest, QString pseudo_joueur_actuel)
{
    int resultat = 0,i;
    QStringList lanceDe = msg.split(" ");

    QStringList message = msg.split(":");
    //ui->chatText->append(trUtf8("le machin cliqué actuel est :  %1").arg(ui->joueurCb->currentText()));

    LOG4(ODEBUG, "Valeurs dans nouveaumessage : %1 %2 %3 %4 ",src,msg,dest,pseudo_joueur_actuel );

    if (dest == pseudo_joueur_actuel && src == dest)
    {
        ui->chatText->append(trUtf8("<em style=\"color: purple;\"><strong>vous vous murmurez :</strong> %1</em>").arg(message.at(1)));
        return;
    }
    if (dest == "Tous")
    {
        if (src == pseudo_joueur_actuel){
            ui->chatText->append(trUtf8("<strong>à Tous :</strong> %1").arg(message.at(1)));
            return;
        }
        ui->chatText->append(trUtf8("<strong>%1 :</strong> %2").arg(src, message.at(1)));
        return;
    }
    if (dest == pseudo_joueur_actuel)
    {
        ui->chatText->append(trUtf8("<em style=\"color: purple;\"><strong>%1 vous chuchote :</strong> %2</em>").arg(src, message.at(1)));
        return;
    }
    if (src == pseudo_joueur_actuel)
    {
        ui->chatText->append(trUtf8("<em style=\"color: purple;\"><strong> à %1 : </strong>%2</em>").arg(dest, message.at(1)));
    }
    //ui->chatText->append(trUtf8("<strong>%1</strong> : %2").arg(src, message.at(1)));
    //qDebug()<< "PSEUDO JOUEUR ACTUEL " << pseudo_joueur_actuel ;



    //ui->chatText->append(trUtf8("je suis le joueur :  %1").arg(plop));

    if (lanceDe.at(0) == "/de"){
        for (i = 0; i<lanceDe.at(1).toInt() ; i++)
            resultat+=(qrand()%6) + 1;
        ui->chatText->append(trUtf8("<strong>%1 lance %2 dé(s) et obtient :</strong> %3 !").arg(src, lanceDe.at(1),QString::number(resultat)));
    }
    //else
        //ui->chatText->append(trUtf8("<strong><em>%1</em></strong> : %2").arg(src, msg));
}

void FormChat::on_lineEdit_returnPressed()
{
    on_sendBtn_clicked();
}

void FormChat::on_sendBtn_clicked()
{
    emit sendMessage(ui->joueurCb->currentText(), ui->lineEdit->text());
    ui->lineEdit->clear();
}

void FormChat::addUsers(Joueur* j)
{
    this->ui->joueurCb->addItem(j->getNom());
}

